home *** CD-ROM | disk | FTP | other *** search
/ Apple WWDC 1996 / WWDC96_1996 (CD).toast / Technology Materials / QuickTime VR / MacOS / QuickDraw™ 3D 1.0.6F4 SDK / Development / 3DMF parser / 1.0 version / MF3DPC / MFSTDCHK.H < prev    next >
Encoding:
C/C++ Source or Header  |  1995-11-07  |  1.8 KB  |  55 lines  |  [TEXT/dosa]

  1. /*==============================================================================
  2.  *
  3.  *    File:        MFSTDCHK.H
  4.  *
  5.  *    Function:    Hooks for standard C I/O routines.
  6.  *
  7.  *    Version:    Metafile:    Version 1.0 3DMF files
  8.  *                Package:    Release #2 of this code
  9.  *
  10.  *    Author(s):    Rick Wong (RWW), Duet Development Corp.
  11.  *                John Kelly (JRK), Duet Development Corp.
  12.  *
  13.  *    Copyright:    (c) 1995 by Apple Computer, Inc., all rights reserved.
  14.  *
  15.  *    Change History (most recent first):
  16.  *        FB7_JRK    Pragma macros
  17.  *        Fabio    Changed file name to 8 characters
  18.  *        F29_RWW    File created.
  19.  *==============================================================================
  20.  */
  21. #if defined(applec) || defined(__MWERKS__) || defined(THINK_C)
  22. #pragma once
  23. #endif
  24.  
  25. #include "MFTYPES.H"
  26.  
  27. /* JRK */
  28. /* It seems that some C environments (such as Visual C++) have trouble
  29.  * when reading files that don't follow native newline conventions, so
  30.  * we open it as binary to skip newline conversion.
  31.  */
  32.  
  33. #define    kMF3D_StdCTextReadPermStr        "rb"
  34. #define    kMF3D_StdCTextWritePermStr        "w+"
  35. #define    kMF3D_StdCBinaryReadPermStr        "rb"
  36. #define    kMF3D_StdCBinaryWritePermStr    "w+b"
  37.  
  38. typedef enum MF3DStdCPermissionEnum
  39. {    kMF3DStdCReadPerm,
  40.     kMF3DStdCWritePerm
  41. } MF3DStdCPermissionEnum;
  42.  
  43. typedef    struct MF3DStdCOpenData
  44. {    char *                    filename;
  45.     MF3DStdCPermissionEnum    permission;
  46. } MF3DStdCOpenData, *MF3DStdCOpenDataPtr;
  47.  
  48. MF3DErr    MF3DStdCOpenHook(MF3DDataFormatEnum, MF3DUserOpenDataPtr,
  49.                 MF3DUserFilePtr *);
  50. MF3DErr    MF3DStdCReadHook(MF3DUserFilePtr, MF3DSize, char *);
  51. MF3DErr    MF3DStdCWriteHook(MF3DUserFilePtr, MF3DSize, const char *);
  52. MF3DErr    MF3DStdCTellHook(MF3DUserFilePtr, MF3DBinaryFilePosition *);
  53. MF3DErr    MF3DStdCSeekHook(MF3DUserFilePtr, MF3DBinaryFilePosition);
  54. MF3DErr    MF3DStdCCloseHook(MF3DUserFilePtr);
  55.